perm filename CACHE.3[AM,DBL] blob sn#396246 filedate 1978-11-18 generic text, type C, neo UTF8
COMMENT āŠ—   VALID 00002 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	Caching
C00013 ENDMK
CāŠ—;
Caching
Rick and Phil,

Thanks for the notes.  I like Rick's outline, and have some comments
on it and on Phil's remarks as well.


First, title and authors.  In some sense this is not important, but
pragmatically it can have a big impact on the way a paper is received.
How about just Cognitive Economy?  This enables the paper and its
concepts to be referred to tersely, and will pique the curiosity of
many potential readers.  "Economics" sounds too presumptuous for the
material we have; the longer titles Phil suggests are more precise but
unwieldy.                 For author order, I would like to go first,
but if there is dissention we can draw lots or something.  The primary
author should have the brunt of the task of preparing the article,
in any case, including content, prose, and document preparation.


The thesis that Rick states is much too strongly worded for my taste;
co-authoring with Rick is always a pleasure because he's the only
person as brash as I -- and occasionally moreso!  But I really don't
want to claim that we have  the final set of three keys (abstrac.,
caching, expectation-simplified processing) to represenational economy.
In fact, can we think of more?

THESIS:  As often happens when I read Rick's stuff, I misunderstood it the
first time through, and as a result got an additional good idea out
of it that Rick didn't intend:

Much of what goes on today at the fore of AI can be viewed as
"expectation-simplified processing": frames, scripts, user modelling,
caching of all levels and flavors,...    Here are a few poins on the
continuum:
     After computing a value, cache it.  Note: "value" may be a number,
	a vector of numbers, an alphanumeric identifier, a vector of them...
     Synthesize a function capable of efficiently computing desired values,
        and cache that function.
     Synthesize a whole concept data structure (frame, script...) which
        contains relevant partial models of the recent situation.
There are more intermediate ones, but you see the progression from
static to dynamic, from scalar to descriptive.  In all cases, the
motivation for doing this storage is (i) speed up the recognition of
(the need to do) similar computations in the future, and (ii) speed up
or even eliminate those computations when you decide they ARE relevant
and you want the values they would return.  These are the two uses of
scripts, but also of cached constants (e.g., caching the value returned
by OWNED-BY, a function from CARS to PEOPLE). A better example: user models,
as they range from a single number, to a few numbers (e.g., in PARRY),
to a dynamic concept-modelling scheme.


OUTLINE:  

Introduction: 
 Model of sys. org. should include, perhaps, agenda-like control capabilities
 Model of intell. should stress the fact that knowledge acrretes, but only
   	occasionally shrinks (abandoning of a whole system of thought is
     	quite a rare event indeed.    --- ask Kuhn!)
 Model of computing can then, if we add the above 2 points, include this one:
  The half-frame problem
    In which the reasons supporting the tasks have the form "stiuation X is
  	not yet attained, but executing me will help you get there"
    	(e.g., facet f of concept C has only 2 entries)
    Then at task-choosing time, if a task's reasons are out-of-date, it is
 	most likely that that is because some of them are no longer valid,
	hence that the rating of the task will DECREASE
    So, all we need do is re-evaluate the top task, get a new LOWER number
	for its priority, reinsert it into the agenda, etc., and continue
	until the top task remains at the top.  The half-frame problem
	gets its name from  he fact that we do have to reevaluate some
   	tasks to see how the world has changed out from under them, BUT
	in general we need only do this for a small number of tasks to find
	the best one, not for ALL the tasks.
 Idea of Expec.: another point is that expectations allow us to set up
	frames in which to interpret the data, thereby making it v. quick.

Abstraction
 As you know, I would like to rpesent heur. hier. as a kind of conceptual hier.
 I liked the idea of using bomber simulation, and will comment again on this.

Caching
 Brian Smith (MIT grad student) gave me the general idea that the lisp EVAL
 function should, in general, have a second argument: the interpreter to use.
 One very special case of this is where EVAL takes as its second argument
 just a resource limit (time/space to expend); Bobrow and Norman discussed
 an idea like this a while back.  The continuum here stretches from the extreme
 of GETP (i,e, if a value is stored or cached there, fine, if not give up),
 to a more sophisticated inheritance search (accepting caches), 
 to the same thing but rejecting caches, to an even more complex deduction,
 perhaps with searching disk allowed, and finally to INduction (try to
 discover concepts relevant to answering the request).

 The various headings Rick suggests are interrelated, and this may cause
 us some trouble later, esp. if we don't watch out for it.  E.g., the
 updating principles constrain and are constrained by the storage ones;
 When you store is constrained by Why; etc.

Expectation
 As stated above, generalize this enough to include stereotyping,
 of events (scripts), of situations (frames), of people (user models),...

Cognitive econ. revisited
 This was quite good.
 What about the future, when processor costs drop way beolow storage, though?

Phil's comments --- comments on them:

generally I ageed.  

The heuristic about "better talk about Hearts, not Bombers", is so
ivory tower as to be fit material for Sat. Night Live.  Unfortunately,
you are right that a good many AI researchers may feel that way.  We don't,
so the hell with them.  I did like your counterproposal about int'l.
terrorism, and I agree that we won't find ANY pro-terrorists at IJCAI.

Expectation-simplified processing IS awkward, but the concise replacements
generally have very negative connotations (e.g., stereotyping).
Expectation-focusing is not much better than the origianl term, in my opinion.


Let's get together and talk more about this.  One alternative to that
would be for someone, e.g. me, to flesh out the outline, essentially
start writing some prose.

I am quite encouraged and think this will turn into a good paper.
Doug